package com.cnt.service;

import com.cnt.dto.MoneyDTO;
import com.cnt.entity.DonationRecords;
import com.cnt.entity.MoneyLog;
import com.cnt.vo.ResultVo;

import java.util.List;
import java.util.Map;

public interface DonationRecordsService {

    //获取用户捐款记录
    public ResultVo<List<DonationRecords>> getDonationRecordsByUserId(Integer userId);

    //用户虚拟货币充值
    public ResultVo<String> recharge(MoneyDTO moneyDTO);

    //用户虚拟货币提现
    public ResultVo<String> withdraw(MoneyDTO moneyDTO);

    //用户捐款
    public ResultVo<String> contribution(MoneyDTO moneyDTO);

    //用户捐赠回退
    public ResultVo<String> donationRefund(MoneyDTO moneyDTO);

    ResultVo<Double> getMoneyInfo(Integer userId);

    //获取一次募捐的捐款记录
    public ResultVo<List<DonationRecords>> getDonationRecords(Integer donationId);

    //展示图表
    public ResultVo<Map<Integer, Double>> chartDataDonation(Integer year);

    //获取用户充值记录
    public ResultVo<List<Map<String, Object>>> rechargeByUserId(Integer userId);

    //获取用户提现记录
    public ResultVo<List<Map<String, Object>>> withdrawByUserId(Integer userId);

    //获取用户回退记录
    public ResultVo<List<Map<String, Object>>> refundByUserId(Integer userId);

    public ResultVo<List<DonationRecords>> getDonationRecords();

    public ResultVo<List<MoneyLog>> getMoneyLog();


}
